package cn.com.anypay.manager.service;

import cn.com.anysdk.sms.exception.SmsException;
import java.util.Map;

public interface SmsService {
    /**
     * 切换短信服务提供商
     * @param config 服务商配置信息
     * @return 切换结果提示信息
     */
    String switchProvider(Map<String, Object> config) throws SmsException;

    /**
     * 发送短信
     * @param phone 手机号
     * @param templateParams 模板参数（JSON格式）
     * @return 发送结果
     */
    Map<String, Object> sendSms(String phone, String templateParams) throws SmsException;

    /**
     * 获取当前配置
     * @return 当前配置信息
     */
    Map<String, Object> getCurrentConfig() throws SmsException;

    /**
     * 根据提供商类型获取配置
     * @param provider 提供商类型
     * @return 配置信息
     */
    Map<String, Object> getConfigByProvider(String provider) throws SmsException;
}
